A programmable logic controller, called controller in the rest of the description, is a piece of automated equipment capable of driving, controlling and/or monitoring one or more processes. Such a controller is often referred to using the acronym PLC. For example, the controller makes it possible to control machines on an assembly line in a plant or to drive automatic handling systems.
The controller is generally built on a modular-type architecture. Consequently, the controller comprises different modules. In particular, the controller includes a communication module able to ensure the exchange of data between the other modules of the controller. This communication module thus constitutes a transmission bus generally referred to as “backplane” bus.
The number of modules of the controller depends on the needs of the process or processes to be automated. Typically, the controller comprises a power module, a central unit, processing modules and input modules.
The power module provides, via the communication module, electricity making it possible to see to the operation of the other modules of the controller.
The central unit is a computation unit or processor typically referred to as a CPU (central processing unit). The central processing unit is a module including onboard software comprising the instructions to be executed by the onboard software in order to perform the desired automated operations. The central processing unit also generally comprises a front facing connection to programming tools of the PC type.
Each processing module is able to process data.
Each input module makes it possible to ensure secure interfacing between the central processing unit and elements interacting with the controller. As an illustration, such elements are sensors, pushbuttons, actuators, lighted indicators or valves. This diversity means that a controller usually comprises several input modules, some input modules being digital, others being analog.
In order to ensure secure interfacing, and more generally security as well as proper operation of the controller, each of the modules is able to detect an operating anomaly. Depending on the cases, an operating anomaly occurs in case of malfunction of the element interacting with the controller, the connection between the element and the controller, or the input module.
In order to detect the presence of such an anomaly, it is known to provide each input module with at least two identical interfaces per input, the output of the two interfaces being connected to a comparator able to compare the output signals. If there is no operating anomaly, the comparator does not detect any difference between the two signals, since the two interfaces are identical. When the comparator detects a significant difference between the two output signals, that means that a malfunction has occurred. Switches in the circuit at each interface make it possible to perform a test sequence of the interfaces to determine whether the malfunction is coming from the input module or an element outside the input module. Furthermore, in order to avoid failures of the interfaces leading to an identical signal on both output signals, the test sequence should be done periodically to guarantee that operation is normal. When this test sequence is done, neither of the two tested interfaces transmits the signal when the two interfaces are tested at the same time. As a result, it is often chosen to use an input module having three identical interfaces per input.
However, such modules are cumbersome.